package az

import (
	"github.com/Oudwins/zog/zconst"
)

var Map zconst.LangMap = map[zconst.ZogType]map[zconst.ZogIssueCode]string{
	zconst.TypeString: {
		zconst.NotIssueCode(zconst.IssueCodeLen):             "sətir {{len}} simvol olmamalıdır",
		zconst.NotIssueCode(zconst.IssueCodeEmail):           "etibarlı e-poçt olmamalıdır",
		zconst.NotIssueCode(zconst.IssueCodeUUID):            "etibarlı UUID olmamalıdır",
		zconst.NotIssueCode(zconst.IssueCodeMatch):           "sətir yanlışdır",
		zconst.NotIssueCode(zconst.IssueCodeURL):             "etibarlı URL olmamalıdır",
		zconst.NotIssueCode(zconst.IssueCodeHasPrefix):       "sətir '{{prefix}}' ilə başlamamalıdır",
		zconst.NotIssueCode(zconst.IssueCodeHasSuffix):       "sətir '{{suffix}}' ilə bitməməlidir",
		zconst.NotIssueCode(zconst.IssueCodeContains):        "sətir daxilində '{{contained}}' olmamalıdır",
		zconst.NotIssueCode(zconst.IssueCodeContainsDigit):   "sətir daxilində rəqəm olmamalıdır",
		zconst.NotIssueCode(zconst.IssueCodeContainsUpper):   "sətir daxilində böyük hərf olmamalıdır",
		zconst.NotIssueCode(zconst.IssueCodeContainsLower):   "sətir daxilində kiçik hərf olmamalıdır",
		zconst.NotIssueCode(zconst.IssueCodeContainsSpecial): "sətir daxilində xüsusi simvol olmamalıdır",
		zconst.NotIssueCode(zconst.IssueCodeOneOf):           "sətir {{one_of_options}} variantlarından biri olmamalıdır",
		zconst.IssueCodeRequired:                             "tələb olunur",
		zconst.IssueCodeNotNil:                               "boş olmamalıdır",
		zconst.IssueCodeMin:                                  "sətir ən azı {{min}} simvol olmalıdır",
		zconst.IssueCodeMax:                                  "sətir ən çox {{max}} simvol olmalıdır",
		zconst.IssueCodeLen:                                  "sətir {{len}} simvol olmalıdır",
		zconst.IssueCodeEmail:                                "etibarlı e-poçt olmalıdır",
		zconst.IssueCodeUUID:                                 "etibarlı UUID olmalıdır",
		zconst.IssueCodeMatch:                                "sətir yanlışdır",
		zconst.IssueCodeURL:                                  "etibarlı URL olmalıdır",
		zconst.IssueCodeIP:                                   "etibarlı {{ip}} ünvanı olmalıdır",
		zconst.IssueCodeHasPrefix:                            "sətir '{{prefix}}' ilə başlamalıdır",
		zconst.IssueCodeHasSuffix:                            "sətir '{{suffix}}' ilə bitməlidir",
		zconst.IssueCodeContains:                             "sətir daxilində '{{contained}}' olmalıdır",
		zconst.IssueCodeContainsDigit:                        "sətir daxilində ən azı bir rəqəm olmalıdır",
		zconst.IssueCodeContainsUpper:                        "sətir daxilində ən azı bir böyük hərf olmalıdır",
		zconst.IssueCodeContainsLower:                        "sətir daxilində ən azı bir kiçik hərf olmalıdır",
		zconst.IssueCodeContainsSpecial:                      "sətir daxilində ən azı bir xüsusi simvol olmalıdır",
		zconst.IssueCodeOneOf:                                "sətir {{one_of_options}} variantlarından biri olmalıdır",
		zconst.IssueCodeFallback:                             "sətir yanlışdır",
	},
	zconst.TypeBool: {
		zconst.IssueCodeRequired: "tələb olunur",
		zconst.IssueCodeNotNil:   "boş olmamalıdır",
		zconst.IssueCodeTrue:     "qiymət 'true' olmalıdır",
		zconst.IssueCodeEQ:       "qiymət {{eq}}-a bərabər olmalıdır",
		zconst.IssueCodeFalse:    "qiymət 'false' olmalıdır",
		zconst.IssueCodeFallback: "qiymət yanlışdır",
	},
	zconst.TypeNumber: {
		zconst.IssueCodeRequired:                   "tələb olunur",
		zconst.IssueCodeNotNil:                     "boş olmamalıdır",
		zconst.IssueCodeLTE:                        "rəqəm {{lte}}-dən kiçik və ya bərabər olmalıdır",
		zconst.IssueCodeLT:                         "rəqəm {{lt}}-dən kiçik olmalıdır",
		zconst.IssueCodeGTE:                        "rəqəm {{gte}}-dən böyük və ya bərabər olmalıdır",
		zconst.IssueCodeGT:                         "rəqəm {{gt}}-dən böyük olmalıdır",
		zconst.IssueCodeEQ:                         "rəqəm {{eq}}-ə bərabər olmalıdır",
		zconst.NotIssueCode(zconst.IssueCodeEQ):    "rəqəm {{eq}}-ə bərabər olmamalıdır",
		zconst.IssueCodeOneOf:                      "rəqəm {{options}} variantlarından biri olmalıdır",
		zconst.NotIssueCode(zconst.IssueCodeOneOf): "rəqəm {{options}} variantlarından biri olmamalıdır",
		zconst.IssueCodeFallback:                   "rəqəm yanlışdır",
	},
	zconst.TypeTime: {
		zconst.IssueCodeRequired: "tələb olunur",
		zconst.IssueCodeNotNil:   "boş olmamalıdır",
		zconst.IssueCodeAfter:    "vaxt {{after}} tarixindən sonra olmalıdır",
		zconst.IssueCodeBefore:   "vaxt {{before}} tarixindən əvvəl olmalıdır",
		zconst.IssueCodeEQ:       "vaxt {{eq}}-ə bərabər olmalıdır",
		zconst.IssueCodeFallback: "vaxt yanlışdır",
	},
	zconst.TypeSlice: {
		zconst.IssueCodeRequired:                      "tələb olunur",
		zconst.IssueCodeNotNil:                        "boş olmamalıdır",
		zconst.IssueCodeMin:                           "siyahıda ən azı {{min}} element olmalıdır",
		zconst.IssueCodeMax:                           "siyahıda maksimum {{max}} element olmalıdır",
		zconst.IssueCodeLen:                           "siyahıda {{len}} element olmalıdır",
		zconst.NotIssueCode(zconst.IssueCodeLen):      "siyahıda {{len}} element olmamalıdır",
		zconst.IssueCodeContains:                      "siyahı daxilində '{{contained}}' olmalıdır",
		zconst.NotIssueCode(zconst.IssueCodeContains): "siyahı daxilində '{{contained}}' olmamalıdır",
		zconst.IssueCodeFallback:                      "siyahı yanlışdır",
	},
	zconst.TypeStruct: {
		zconst.IssueCodeRequired: "tələb olunur",
		zconst.IssueCodeNotNil:   "boş olmamalıdır",
		zconst.IssueCodeFallback: "struktur yanlışdır",
		// JSON
		zconst.IssueCodeInvalidJSON: "JSON formatı yanlışdır",
		// ZHTTP ISSUES
		zconst.IssueCodeZHTTPInvalidForm:  "form formatı yanlışdır",
		zconst.IssueCodeZHTTPInvalidQuery: "sorğu parametrləri yanlışdır",
	},
}
